package com.example.pojo;

import com.baomidou.mybatisplus.annotation.*;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.LocalDateTime;
import java.util.Date;

/**
 * @Author Str
 * @Date 2021/9/22 21:59
 * @Description :
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
public class User {
    @TableId(type = IdType.ASSIGN_ID)
    private Long id;
    private String name;
    private Integer age;
    private String email;

    @Version  // 代表乐观锁Version注解
    private Integer version;

    @TableLogic  // 逻辑删除注解
    private Integer deleted;

    // 字段添加填充内容
    // 在创建的时候自动执行插入操作
    @TableField(fill = FieldFill.INSERT)
    private LocalDateTime createTime;
    // 在更新的时候自动执行插入，因为一开始的时候这两个字段都有属性，所以是创建的时候和更新的时候都插入
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
}
